Systems and methods for sharing documents

ABSTRACT

Methods and systems for sharing electronic documents are described herein. The example method includes storing the electronic documents in a relational database storage; storing entity identifiers in the relational database storage, each entity identifier representing an entity type; recording in a non-relational database storage associations between the electronic documents and at least one entity identifier, each association comprising a relationship between a set of electronic documents and the at least one entity identifier; associating a delegate account with the at least one entity identifier; and based on an association recorded in the non-relational database storage for the at least one entity identifier, granting the delegate account a subset of document management functions available for the set of documents.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/690,760 filed Aug. 30, 2017, which claims the benefit of U.S.Provisional Patent Application No. 62/383,301, filed Sep. 2, 2016, theentire contents of which are incorporated herein by reference.

FIELD

The described embodiments relate to methods and systems for sharingdocuments and in particular, for sharing documents with delegates.

BACKGROUND

In comparison to physical documents, electronic documents can be moreportable and require less physical storage space. Electronic documentscan also be easily modified, duplicated and disseminated.

However, the convenience of electronic documents can result in otherlimitations. The ease with which electronic documents can be duplicatedand shared with others, for example, heightens the need for propersecurity safeguards. Also, since electronic documents can be createdfairly easily and with minimal expense, the resulting volume ofelectronic documents that need to be managed can be fairly significant.

SUMMARY

The various embodiments described herein generally relate to methods(and associated systems configured to implement the methods) for sharinga plurality of documents.

In accordance with some embodiments, there is provided a method forsharing a plurality of electronic documents. The method includes:storing the plurality of electronic documents in a relational databasestorage; storing a plurality of entity identifiers in the relationaldatabase storage, each entity identifier representing an entity typeselected from a plurality of entity types; recording in a non-relationaldatabase storage a plurality of associations between the plurality ofelectronic documents and at least one entity identifier from theplurality of entity identifiers, each association comprising arelationship between a set of electronic documents from the plurality ofelectronic documents and the at least one entity identifier; associatinga delegate account with the at least one entity identifier; and based onan association recorded in the non-relational database storage for theat least one entity identifier, granting the delegate account a subsetof document management functions from a set of document managementfunctions available for the set of documents.

In some embodiments, each association includes a definition of thesubset of document management functions for the set of documents and theat least one entity identifier.

In some embodiments, the set of document management functions includesat least one of a modification function, a download function and a sharefunction.

In some embodiments, the delegate account is associated with a first setof documents and a second set of documents that is different from thefirst set of documents, and granting the delegate account the subset ofdocument management functions includes: determining a first associationbetween the first set of electronic documents and the at least oneentity identifier; determining a second association between the secondset of electronic documents and the at least one entity identifier; andgranting the delegate account a first subset of document managementfunctions for the first set of electronic documents based on the firstassociation, and a second subset of document management functions forthe second set of documents based on the second association.

In some embodiments, the first subset of electronic document managementfunctions is different from the second subset of document managementfunctions.

In some embodiments, the subset of electronic document managementfunctions includes a conditional access to the set of documents, theconditional access indicating access to the set of documents iscontingent on an occurrence of an event defined by an owner of the setof documents.

In some embodiments, for the set of documents, the non-relationaldatabase storage includes a first association and a second associationthat is different from the first association; and the method includesassociating a first delegate account with a first entity identifier inthe first association and a second delegate account with a second entityidentifier in the second association, the second delegate account beingdifferent from the first delegate account.

In some embodiments, the set of documents includes one or moredocuments.

In some embodiments, the relational database storage includes one ormore relational databases organized based on a relational model.

In some embodiments, the non-relational database storage includes one ormore non-relational databases organized based on a non-relational model.

In accordance with an embodiment, there is provided a system for sharinga plurality of documents. The system includes: a relational databasestorage for storing, at least: the plurality of documents; and aplurality of entity identifiers, each entity identifier representing anentity type selected from a plurality of entity types; a non-relationaldatabase storage for recording a plurality of associations between theplurality of documents and at least one entity identifier from theplurality of entity identifiers, each association comprising arelationship between a set of documents from the plurality of documentsand the at least one entity identifier; and a documents manager operableto access each of the relational database storage and the non-relationaldatabase storage via a network, the documents manager comprising aprocessor operable to: associate a delegate account with the at leastone entity identifier; and based on an association recorded in thenon-relational database storage for the at least one entity identifier,granting the delegate account a subset of document management functionsfrom a set of document management functions available for the set ofdocuments.

In some embodiments, each association includes a definition of thesubset of document management functions for the set of documents and theat least one entity identifier.

In some embodiments, the set of document management functions include atleast one of a modification function, a download function and a sharefunction.

In some embodiments, the delegate account is associated with a first setof documents and a second set of documents that is different from thefirst set of documents, and the documents manager operates to: determinea first association between the first set of documents and the at leastone entity identifier; determine a second association between the secondset of documents and the at least one entity identifier; and grant thedelegate account a first subset of document management functions for thefirst set of documents based on the first association, and a secondsubset of document management functions for the second set of documentsbased on the second association.

In some embodiments, the first subset of document management functionsis different from the second subset of document management functions.

In some embodiments, the subset of document management functionscomprises a conditional access to the set of documents, the conditionalaccess indicating access to the set of documents is contingent on anoccurrence of an event defined by an owner of the set of documents.

In some embodiments, for the set of documents, the non-relationaldatabase storage comprises a first association and a second associationthat is different from the first association; and the documents managerassociates a first delegate account with a first entity identifier inthe first association and a second delegate account with a second entityidentifier in the second association, the second delegate account beingdifferent from the first delegate account.

In some embodiments, the set of documents includes one or moredocuments.

In some embodiments, the relational database storage includes one ormore relational databases organized based on a relational model.

In some embodiments, the non-relational database storage includes one ormore non-relational databases organized based on a non-relational model.

BRIEF DESCRIPTION OF THE DRAWINGS

Several embodiments will now be described in detail with reference tothe drawings, in which:

FIG. 1 is a block diagram of components interacting with a documentsmanagement system in accordance with an example embodiment;

FIG. 2 is a flowchart of an example embodiment of various methods ofsharing documents;

FIG. 3 is a screenshot of an example contact list in accordance with anexample embodiment;

FIG. 4 is a screenshot of an example entity selection interface inaccordance with an example embodiment;

FIG. 5 is an example delegate invitation in accordance with an exampleembodiment;

FIG. 6A is a screenshot of an example interface displaying a documentdirectory for a user in accordance with an example embodiment;

FIG. 6B is a screenshot of an example interface displaying a set ofdocuments from the document directory of FIG. 6A for which a delegateuser has access, in accordance with an example embodiment; and

FIG. 6C is a screenshot of another example interface displaying a set ofdocuments from the document directory of FIG. 6A for which anotherdelegate user has access, in accordance with an example embodiment.

The drawings, described below, are provided for purposes ofillustration, and not of limitation, of the aspects and features ofvarious examples of embodiments described herein. For simplicity andclarity of illustration, elements shown in the drawings have notnecessarily been drawn to scale. The dimensions of some of the elementsmay be exaggerated relative to other elements for clarity.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

It will be appreciated that for simplicity and clarity of illustration,where considered appropriate, reference numerals may be repeated amongthe figures to indicate corresponding or analogous elements or steps. Inaddition, numerous specific details are set forth in order to provide athorough understanding of the exemplary embodiments described herein.However, it will be understood by those of ordinary skill in the artthat the embodiments described herein may be practiced without thesespecific details. In other instances, well-known methods, procedures andcomponents have not been described in detail since these are known tothose skilled in the art. Furthermore, it should be noted that thisdescription is not intended to limit the scope of the embodimentsdescribed herein, but rather as merely describing one or more exemplaryimplementations.

The embodiments of the systems and methods described herein may beimplemented in hardware or software, or a combination of both. Theseembodiments may be implemented in computer programs executing onprogrammable computers, each computer including at least one processor,a data storage system (including volatile memory or non-volatile memoryor other data storage elements or a combination thereof), and at leastone communication interface. For example and without limitation, theprogrammable computers (referred to below as computing devices) may be aserver, network appliance, embedded device, computer expansion module, apersonal computer, laptop, personal data assistant, cellular telephone,smart-phone device, tablet computer, a wireless device or any othercomputing device capable of being configured to carry out the methodsdescribed herein.

In some embodiments, the communication interface may be a networkcommunication interface. In embodiments in which elements are combined,the communication interface may be a software communication interface,such as those for inter-process communication (IPC). In still otherembodiments, there may be a combination of communication interfacesimplemented as hardware, software, and combination thereof.

Program code may be applied to input data to perform the functionsdescribed herein and to generate output information. The outputinformation is applied to one or more output devices, in known fashion.

Each program may be implemented in a high level procedural or objectoriented programming and/or scripting language, or both, to communicatewith a computer system. However, the programs may be implemented inassembly or machine language, if desired. In any case, the language maybe a compiled or interpreted language. Each such computer program may bestored on a storage media or a device (e.g. ROM, magnetic disk, opticaldisc) readable by a general or special purpose programmable computer,for configuring and operating the computer when the storage media ordevice is read by the computer to perform the procedures describedherein. Embodiments of the system may also be considered to beimplemented as a non-transitory computer-readable storage medium,configured with a computer program, where the storage medium soconfigured causes a computer to operate in a specific and predefinedmanner to perform the functions described herein.

Furthermore, the system, processes and methods of the describedembodiments are capable of being distributed in a computer programproduct comprising a computer readable medium that bears computer usableinstructions for one or more processors. The medium may be provided invarious forms, including one or more diskettes, compact disks, tapes,chips, wireline transmissions, satellite transmissions, internettransmission or downloadings, magnetic and electronic storage media,digital and analog signals, and the like. The computer useableinstructions may also be in various forms, including compiled andnon-compiled code.

Electronic documents can be fairly easy to create and modify, and sharedwith others. The convenience of electronic documents increases the needfor electronic document management systems that can facilitate sharingof electronic documents in a secured and convenient manner, particularlyin situations in which multiple entities require access to theelectronic documents.

In the methods and systems described herein, electronic documents can beshared with different entities, and those entities can be allowed toperform different actions in respect of those electronic documentsdepending on their entity type. These entities can act as delegates, ortrusted advisors, of those electronic documents and are granteddifferent degrees of responsibility for those electronic documents.

Each set of electronic documents is associated with one or moredifferent entity types, and each entity type is granted a set ofdocument management functions that allow that entity to perform certainactions in respect of those electronic documents. An originator of theelectronic documents, or a delegate, can assign the different levels ofresponsibility in respect of the electronic documents to differentdelegates with relative ease and in a secured manner.

Reference is made to FIG. 1, which illustrates a block diagram 100 ofcomponents interacting with a documents management system 110. Thedocuments management system 110 includes a documents manager 120, arelational database storage 130, and a non-relational database storage140. The documents manager 120 can communicate with each of user devices102, the relational database storage 130, and the non-relationaldatabase storage 140 via a network 104.

Although only one documents management system 110 is shown in FIG. 1,there may be multiple documents management system 110 distributed over awide geographic area and connected via the network 104.

The documents manager 120 has a processor 122, an interface component124 and a local storage component 126. Each of the processor 122, theinterface component 124 and the local storage component 126 may beimplemented in software or hardware, or a combination of software andhardware.

The processor 122 may include one or more processing components withcomputing processing abilities and memory such as a database(s) or filesystem(s). Each processing component can be configured to performdifferent dedicated tasks.

The processor 122 may be any suitable processors, controllers or digitalsignal processors that can provide sufficient processing power dependingon the configuration, purposes and requirements of the documents manager120. The processor 122 may be configured to control the operation of thedocuments manager 120 based on received data, stored data and/orsettings defined by the user or the system, for example.

The interface component 124 may be any interface that enables thedocuments manager 120 to communicate with other devices and systems viathe network 104. In some embodiments, the interface component 124 caninclude at least one of a serial port, a parallel port, or a USB port.The interface component 124 may also include at least one of anInternet, Local Area Network (LAN), Ethernet, Firewire, modem or digitalsubscriber line connection. Various combinations of these elements maybe incorporated within the interface component 124.

The local storage component 126 can include RAM, ROM, one or more harddrives, one or more flash drives or some other suitable data storageelements such as disk drives, etc. The local storage component 126 mayfurther include one or more databases (not shown) for storinginformation relating to, for example, user accounts and the documents tobe shared.

The processor 122, the interface component 124 and the local storagecomponent 126 may be combined into a fewer number of components, or maybe separated into a greater number of components.

The network 104 may be any network capable of carrying data, includingthe Internet, Ethernet, plain old telephone service (POTS) line, publicswitch telephone network (PSTN), integrated services digital network(ISDN), digital subscriber line (DSL), coaxial cable, fiber optics,satellite, mobile, wireless (e.g. Wi-Fi, WiMAX), SS7 signaling network,fixed line, local area network, wide area network, and others, includingany combination of these, capable of interfacing with, and enablingcommunication between each of the documents manager 120, the userdevices 102, the relational database storage 130 and the non-relationaldatabase storage 140.

The user devices 102 can be any computing device operable to connect tothe network 104 through a wired or wireless connection. As noted, theuser devices 102 may include at least a processor and memory, and may bean electronic tablet device, a personal computer, workstation, server,portable computer, mobile device, personal digital assistant, laptop,smart phone, WAP phone, an interactive television, video displayterminals, gaming consoles, and portable electronic devices or anycombination of these. In some embodiments, the user devices 102 may be alaptop, or a smartphone device equipped with a network adapter forconnecting to the Internet. In some embodiments, the connection requestinitiated from the user devices 102 may be initiated from a web browserand directed at the browser-based communications application supportedby the documents manager 120.

Although only user devices 102 a, 102 b are shown in FIG. 1, it will beunderstood that more user devices 102 can be in communication with eachof the documents manager 120, the relational database storage 130 andthe non-relational database storage 140 at any one time.

The user devices 102 can be operated by any user of the documentsmanagement system 110. For example, the user device 102 a can beoperated by an owner of a document to upload the document to therelational database storage 130 and to define the corresponding documentmanagement functions for the different entities that can access thatdocument. The user device 102 b can be operated by a delegate associatedwith an entity type granted access to that document.

The relational database storage 130 is a database computer (orcomputers) hosting one or more relational databases, such as 132 a to132[n], organized based on a relational model. Relational databases 132have a table structure with each row corresponding to a unique set ofdata, and each column containing a characteristic of that set of data.Each row of the relational database 132 has a defined set of columns.

The relational database storage 130 stores a plurality of electronicdocuments provided by users of the documents management system 110. Therelational database storage 130 can also store data related tocharacteristics of the stored documents, such as document identifiers.In some embodiments, the electronic documents stored in the relationaldatabase storage 130 can be structured as a file directory system withone or more folder levels and subfolder levels as described furtherherein. Each folder level can be assigned a category and each subfolderlevel can be assigned a subcategory.

The relational database storage 130 also stores a plurality of entityidentifiers that represent different entity types. Each entity type canidentify a delegate that can be assigned responsibility for a set ofdocuments. For example, a delegate can be a mortgage broker who can beassigned responsibility for a mortgage application and relatedconveyance documents related to the real estate transaction. Otherdelegates can include insurance brokers, accountants, lawyers, wealthadvisors, trustees, and other professionals. In some embodiments, thedelegate can include personal acquaintances and family members.

The number of relational databases 132 provided in the relationaldatabase storage 130 can vary with the requirements of the documentsmanagement system 110, such as a size of the documents and number ofusers, for example.

The user providing a document can be an owner of the document and/or adelegate of the document or related documents. The documents can includevarious types, such as personal documents (e.g., bank statements, taxforms, wills, etc.), transaction-related documents (e.g., documents forcompleting a mortgage application, etc.) and other related documents.

The non-relational database storage 140 is a database computer (orcomputers) hosting one or more non-relational databases, such as 142 ato 142[n], organized based on a non-relational model, such as key-value,graph, column, document or other models. Unlike relational databases 132that have a predefined set of data fields, non-relational databases 142are not restricted to a set of data fields but can be implemented withmore flexible data structures. Non-relational databases 142 can,therefore, be appropriate for storing unstructured data sets and datathat needs to be accessed regularly due to a high volume of requests.

In comparison with non-relational databases 142, relational databases132 can be computationally expensive for more complex data structures.Data structures that involve multiple nested hierarchies, for example,can require recursive calculations to be performed. As a result, therecan be significant delays to the retrieval and/or storage of data inrelational databases 132. Relational databases 132, therefore, may notbe effective when computational speed is critical and the data structureis fairly complex.

The non-relational database storage 140 can store data related to theentity identifiers, the electronic documents, and associations definedfor the electronic documents and the entity identifiers. By providingthe metadata related to the electronic documents and the entityidentifiers in the non-relational database storage 140, the retrievaland/or updating of data related to the electronic documents will not belimited by the computational limitations associated with querying therelational databases 132 directly.

The number of non-relational databases 142 provided in thenon-relational database storage 140 can vary with the requirements ofthe documents management system 110, such as a size of the documents andnumber of users, for example.

Referring now to FIG. 2, which is a flowchart diagram 200 illustratingan example method for sharing documents. To illustrate the examplemethod, reference will be made simultaneously to FIGS. 3 to 6C.

At 210, the documents manager 120 stores a plurality of documents in therelational database storage 130.

The documents management system 110 described herein can be used forstoring a variety of documents and for facilitating the sharing of thedocuments with different entities. Example documents that can be storedin the relational database storage 130 can include various types, suchas personal documents (e.g., bank statements, tax forms, wills, etc.),transaction-related documents (e.g., documents for completing a mortgageapplication, etc.) and other documents.

The documents can be organized into hierarchies in the relationaldatabase storage 130. The hierarchies may take the form of folders andsubfolders, for example.

At 220, the documents manager 120 stores a plurality of entityidentifiers in the relational database storage 130.

A variety of entity identifiers can be stored in the relational databasestorage 130. The entity identifiers represent an entity type from aplurality of entity types. Each entity type identifies a professional,or a category of individuals, that can be assigned responsibility for aset of documents. The entity identifiers are not associated withspecific users of the documents management system 110, but rather, acategory of individuals who require, or can be assigned, some degree ofaccess to the electronic documents stored in the relational databasestorage 130. The degree of access granted to each entity type can vary.Example entity types can include personal assistants, insurance brokers,lawyers, accountants, wealth advisors and other professionals. In someembodiment, an entity type can be personal acquaintances and familymembers.

The documents manager 120 can generate a notification, and transmit thatnotification, to the owner of the electronic documents and/or theassociated delegate when an electronic document is added to therelational database storage 130.

At 230, the documents manager 120 records in the non-relational databasestorage 140 a plurality of associations between the electronic documentsstored in the relational database storage 130 and at least one entityidentifier.

Each association includes a relationship between a set of electronicdocuments stored in the relational database storage 130 and an entityidentifier stored in the relational database storage 130. For example,the association can include a definition of the subset of documentmanagement functions for that set of electronic documents and the entityidentifier. The set of electronic documents can include one or moreelectronic documents, as determined by the user defining the documentmanagement functions available for each entity identifier. The userdefining the document management functions can be the owner of theelectronic documents or a delegate assigned with the responsibility ofmanaging the document management functions for those electronicdocuments.

Depending on the entity identifier and the set of electronic documents,the association defines the degree of access for the delegate who willbe associated with that entity identifier in subsequent actions in thesystem. An example association will be described with reference to FIGS.3 and 4.

FIG. 3 shows a screenshot 300 of an example contact list 320 for a user310, Alan Smith. The contact list 320 can be stored in the local storagecomponent 126 or in the relational database storage 130 for the user310.

The contact list 320 includes a contact 322 a, which is the user 310himself, a contact 322 b (“Brad Johnson”) with a job title 324 a of EBCmortgage specialist, and a contact 322 c (“Cathy Patton”) with a jobtitle 324 b of insurance broker. The user 310 may not need to beincluded in the contact list 320.

To invite a contact 322 from the contact list 320 to become a delegate,the user 310 associates the contact 322 with one or more entity types inrespect of the electronic documents that the user 310 has control. Asexplained, the user 310 can be the owner of the electronic documents andtherefore, have complete access over the electronic documents, or can bea delegate granted complete access to the electronic documents foranother individual. In this example, the user 310 is the owner of theelectronic documents.

FIG. 4 shows a screenshot 400 of an example entity type selectioninterface 410. As shown in the entity type selection interface 410, theuser 310 owns several sets of documents related to different categories420, namely a personal category 420 a, a family trust category 420 b,and a company category 420 c. The sets of documents are stored in therelational database storage 130. The entity type selection interface 410provides a list 430 of entity types from which the user 310 can selectfor assigning the relevant entity type for each contact 322.

In the example shown in FIG. 4, the user 310 has assigned the contact322 b (“Brad Johnson”) with the “Example Bank” entity type 432 andmortgage entity type 434 for the electronic documents stored within thepersonal category 420 a. This is appropriate since the contact 322 b(“Brad Johnson”) has the job title 324 a of EBC mortgage specialist andtherefore, should have access to electronic documents related tomortgages and the Example Bank banking account, which is the bank fromwhich the user 310 is seeking a mortgage.

After establishing the association between the set of documents withinthe personal category 420 a with the entity types 432 and 434, thedocuments manager 120 can generate and deliver a delegate invitation tothe contact 322 b (“Brad Johnson”) to invite him to become a delegatefor the user 310.

FIG. 5 shows an example delegate invitation 500 provided on a display510 of a user device 502. As shown in FIG. 5, the delegate invitation500 includes a text field 520 explaining the responsibility of being adelegate and an accept icon 530 for directing the recipient to thedocuments management system 110 for completing the registration as adelegate.

At 240, the documents manager 120 associates a delegate account with theat least one entity identifier.

Continuing with FIG. 5, the accept icon 530, when selected, directs therecipient of the delegate invitation 500 to a secured acceptance link.The secured acceptance link may be hashed. At the link, the documentsmanager 120 can complete a registration of a delegate account for therecipient. In this example, the documents manager 120 can associate thedelegate account for the contact 322 b (“Brad Johnson”) with the entitytypes 432 and 434 for the set of documents within the personal category420 a.

At 250, the documents manager 120 grants the delegate account a subsetof document management functions.

As the delegate for the user 310, the delegate account of the contact322 b can be granted various document management functions. A set ofdocument management functions that are available for an electronicdocument, or a set of electronic documents, can be stored in therelational database storage 130, for example.

For example, the document management functions can include managing theelectronic documents or folders (e.g., assigning access permissions todifferent entity types, organizing the electronic documents, uploadingadditional electronic documents, and related actions), modifying theelectronic documents, viewing the electronic documents, downloading andsharing the electronic documents, creating reminders for the electronicdocuments, and other related functions.

Another example document management function can be a conditional accessto a set of electronic documents. The conditional access can becontingent on an occurrence of an event defined by an owner of the setof electronic documents, such as the user 310, or a delegate associatedwith the entity type defined for managing the set of electronicdocuments. For example, estate management documents, such as a will, canbe assigned a conditional access. The delegate assigned with the trusteeentity type for the estate management documents will not be grantedaccess until the testator is deceased, which can be confirmed with acourt order or death certificate, for example.

In some embodiments, only the user 310 can permanently delete theelectronic documents from the documents management system 110.

Reference will now be made to FIGS. 6A to 6C.

FIG. 6A is a screenshot 600A of an example interface displaying adocument directory 620 for the user 310.

The document directory 620 shows the electronic documents stored in therelational database storage 130 for the user 310 organized in a filedirectory format. It will be understood that other data structures maybe used.

The document directory 620 includes five sets of electronic documents622, 624, 626, 628 and 630. Each set of electronic documents 622, 624,626, 628 and 630 includes one or more electronic documents and/orsubfolders. The set of electronic documents 622 is for a bank categoryand includes electronic documents 622 a and 622 b, the set of electronicdocuments 624 is for a tax category and includes electronic documents624 a, 624 b and 624 c, the set of electronic documents 626 is for aninsurance category and includes electronic documents 626 a and 626 b,the set of electronic documents 628 is for a real estate category andincludes electronic documents 628 a, 628 b, and 628 c, and the set ofelectronic documents 630 is for an employment category and includes anelectronic document 630 a and a subfolder 632. The electronic documentswithin the subfolder 632 are not shown.

Continuing with the example described with respect to FIGS. 3 to 5, FIG.6B shows a screenshot 600B of an example interface displaying a set ofdocuments 640 for which the delegate 610 has been assignedresponsibility by the user 310.

As explained with reference to FIGS. 3 and 4, the contact 322 b (“BradJohnson”) is a EBC mortgage specialist, and therefore, the contact 322 bis now the delegate 610 associated with the “Example Bank” entity type432 and mortgage entity type 434 for the electronic documents within thepersonal category 420 a. The electronic documents owned by the user 310that are associated with the “Example Bank” entity type 432 and mortgageentity type 434 include the electronic document 622 a, which is amortgage application, the set of electronic documents 628 related to thereal estate category, namely electronic document 628 a (“offer”), 628 b(“listing details”), and 628 c (“house inspection report), and theelectronic document 630 a (“employment contract”).

It is possible that the electronic documents stored in the relationaldatabase storage 130 can have more than one association stored in thenon-relational database storage 140. An example is now described withreference to FIG. 6C, which is a screenshot 600C of an example interfacedisplaying a set of electronic documents 642 for which a delegate 612(“Cathy Patton”) has been assigned responsibility by the user 310.

The contact 322 c (“Cathy Patton”) is an insurance broker. The user 310has assigned the insurance entity type to the contact 322 c. After thecontact 322 c completed the registration to become the delegate 612(which can be similar to the description for the contact 322 b withreference to FIGS. 4 and 5), the documents manager 120 associates thedelegate account of the contact 322 c with the insurance entity type andthe corresponding set of electronic documents. To grant thecorresponding set of document management functions for the delegateaccount of the delegate 612, the documents manager 120 can determine theassociation stored in the non-relational database storage 140 for theinsurance entity type and the corresponding set of electronic documentswithin the personal category 420 a.

FIG. 6C shows that the set of documents 642 for which the delegate 612has been granted responsibility includes the set of electronic documents626 related to the insurance category, namely electronic document 626 a(“car insurance”) and 626 b (“home insurance”), and the electronicdocument 628 c (“home inspection report”). As described with referenceto FIG. 6B, the delegate 610 was also granted responsibility of theelectronic document 628 c (“home inspection report”). The non-relationaldatabase storage 140, therefore, includes a first association betweenthe electronic document 628 c and each of the “Example Bank” entity type432 and mortgage entity type 434, and a second association between theelectronic document 628 c and the insurance entity type.

Since the roles of the delegates 610 and 612 are different, the firstand second associations can define different subsets of documentmanagement functions for each delegate 610 and 612. For example, thedelegate 610 is associated with the “Example Bank” entity type 432 andthe mortgage entity type 434, and so, the delegate 610 can be granteddocument management functions involving reviewing and sharing of theelectronic document 628 c (“home inspection report”) since the delegate610 may need to share the home inspection report 628 c with otherfinance entities to obtain financing and/or approval for the mortgageapplication 622 a. The delegate 612, in contrast, is associated with theinsurance entity type and therefore, may be granted a documentmanagement function involving only reviewing of the electronic document628 c (“home inspection report”) for finalizing the home insurancedocument 626 b.

The present invention has been described here by way of example only,while numerous specific details are set forth herein in order to providea thorough understanding of the exemplary embodiments described herein.However, it will be understood by those of ordinary skill in the artthat these embodiments may, in some cases, be practiced without thesespecific details. In other instances, well-known methods, procedures andcomponents have not been described in detail so as not to obscure thedescription of the embodiments.

It should be noted that terms of degree such as “substantially”, “about”and “approximately” when used herein mean a reasonable amount ofdeviation of the modified term such that the end result is notsignificantly changed. These terms of degree should be construed asincluding a deviation of the modified term if this deviation would notnegate the meaning of the term it modifies.

In addition, as used herein, the wording “and/or” is intended torepresent an inclusive-or. That is, “X and/or Y” is intended to mean Xor Y or both, for example. As a further example, “X, Y, and/or Z” isintended to mean X or Y or Z or any combination thereof.

Various modification and variations may be made to these exemplaryembodiments without departing from the spirit and scope of theinvention, which is limited only by the appended claims. Also, in thevarious user interfaces illustrated in the drawings, it will beunderstood that the illustrated user interface text and controls areprovided as examples only and are not meant to be limiting. Othersuitable user interface elements may be possible.

1-20. (canceled)
 21. A method for sharing a plurality of electronicdocuments, the method comprising: providing a plurality of electronicdocuments and a plurality of entity identifiers in a relational databasestorage, a selected identifier of the plurality of entity identifiersdefining a category of users; providing, in a non-relational databasestorage, at least one association between the plurality of electronicdocuments and the selected identifier, wherein the non-relationaldatabase storage has reduced computational limitations for performingqueries relative to the relational database storage, the at least oneassociation comprising a relationship between a set of electronicdocuments from the plurality of electronic documents and the selectedidentifier; identifying a delegate account associated with the selectedentity identifier; and based on an association provided in thenon-relational database storage for the selected identifier, grantingthe delegate account a subset of document management functions from aset of document management functions available for the set of documents.22. The method of claim 21, wherein each association provided in thenon-relational database storage comprises a definition of the subset ofdocument management functions for the set of documents and the selectedidentifier.
 23. The method of claim 21, wherein the set of documentmanagement functions comprise at least one of a modification function, adownload function and a share function.
 24. The method of claim 21,wherein the delegate account is associated with a first set of documentsand a second set of documents that is different from the first set ofdocuments, and granting the delegate account the subset of documentmanagement functions comprises: determining a first association betweenthe first set of electronic documents and the selected identifier;determining a second association between the second set of electronicdocuments and the selected identifier; and granting the delegate accounta first subset of document management functions for the first set ofelectronic documents based on the first association, and a second subsetof document management functions for the second set of documents basedon the second association.
 25. The method of claim 24, wherein the firstsubset of electronic document management functions is different from thesecond subset of document management functions.
 26. The method of claim21, wherein the subset of electronic document management functionscomprises a conditional access to the set of documents, the conditionalaccess indicating access to the set of documents is contingent on anoccurrence of an event defined by an owner of the set of documents. 27.The method of claim 21, wherein, for the set of documents, thenon-relational database storage comprises a first association and asecond association that is different from the first association; and themethod comprises associating a first delegate account with a firstentity identifier in the first association and a second delegate accountwith a second entity identifier in the second association, the seconddelegate account being different from the first delegate account. 28.The method of claim 21, wherein the plurality of entity identifiers iscomprised of a plurality of entity types, and wherein the selectedidentifier belongs to an entity type that defines the category of users.29. The method of claim 21, wherein the relational database storagecomprises one or more relational databases organized based on arelational model.
 30. The method of claim 21, wherein the non-relationaldatabase storage comprises one or more non-relational databasesorganized based on a non-relational model.
 31. A system for sharing aplurality of electronic documents, the system comprising: a relationaldatabase storage storing: the plurality of electronic documents; and aplurality of entity identifiers comprising a selected identifier of theplurality of entity identifiers that defines a category of users; anon-relational database storage that has reduced computationallimitations for performing queries relative to the relational databasestorage, the non-relational database storing at least one associationbetween the plurality of electronic documents and the selectedidentifier, the at least one association comprising a relationshipbetween a set of documents from the plurality of electronic documentsand the selected identifier; and a processor communicatively coupled tothe relational database storage and the non-relational database storagevia a network, the processor configured to: identify a delegate accountassociated with the selected entity identifier; and based on anassociation provided in the non-relational database storage for theselected identifier, grant the delegate account a subset of documentmanagement functions from a set of document management functionsavailable for the set of documents.
 32. The system of claim 31, whereineach association provided in the non-relational database storagecomprises a definition of the subset of document management functionsfor the set of documents and the selected identifier.
 33. The system ofclaim 31, wherein the set of document management functions comprise atleast one of a modification function, a download function and a sharefunction.
 34. The system of claim 31, wherein the delegate account isassociated with a first set of documents and a second set of documentsthat is different from the first set of documents, and the processor isfurther configured to: determine a first association between the firstset of documents and the at least one entity identifier; determine asecond association between the second set of documents and the selectedidentifier; and grant the delegate account a first subset of documentmanagement functions for the first set of documents based on the firstassociation, and a second subset of document management functions forthe second set of documents based on the second association.
 35. Thesystem of claim 34, wherein the first subset of document managementfunctions is different from the second subset of document managementfunctions.
 36. The system of claim 31, wherein the subset of documentmanagement functions comprises a conditional access to the set ofdocuments, the conditional access indicating access to the set ofdocuments is contingent on an occurrence of an event defined by an ownerof the set of documents.
 37. The system of claim 31, wherein, for theset of documents, the non-relational database storage comprises a firstassociation and a second association that is different from the firstassociation; and the processor is configured to associate a firstdelegate account with a first entity identifier in the first associationand a second delegate account with a second entity identifier in thesecond association, the second delegate account being different from thefirst delegate account.
 38. The system of claim 31, wherein theplurality of entity identifiers is comprised of a plurality of entitytypes, and wherein the selected identifier belongs to an entity typethat defines the category of users.
 39. The system of claim 31, whereinthe relational database storage comprises one or more relationaldatabases organized based on a relational model.
 40. The system of claim31, wherein the non-relational database storage comprises one or morenon-relational databases organized based on a non-relational model.